As disclosed in, for example, JP-A-7-30388, a clock generator has been proposed that generates a periodic clock signal by using a ring oscillator. The ring oscillator includes an odd number of inverter circuits (i.e., NOT gates) connected in a circular chain. The output of each inverter oscillates between two voltage levels, representing high and low. Thus, the ring oscillator creates a pulse signal. The clock generator generates the periodic clock signal by dividing the pulse signal by a predetermined frequency division ratio.
A frequency of the pulse signal created by the ring oscillator varies with temperature. The clock generator continuously calculates the frequency division ratio based on the frequency of the pulse signal to keep a frequency of the clock signal constant. This type of clock generator has been widely used in various fields, because the cost of the ring oscillator is low, and the size of the ring oscillator is small.
However, a guaranteed operating temperature of the ring oscillator is relatively low. Therefore, the ring oscillator may be thermally broken, when repeatedly operated and consequently temperature of the ring oscillator is increased. Some kind of method to limit an increase in temperature of the ring oscillator is required, when the ring oscillator is operated in such a manner that the temperature of the ring oscillator is increased.
For example, in a case where the clock generator and a central processing unit (CPU) supplied with the clock signal from the clock generator are packaged in a single chip, heat produced by the CPU is transferred to the ring oscillator in the clock generator. Further, since the generated clock signal also produces heat, the temperature of the ring oscillator may exceed its guaranteed operating temperature. Therefore, the ring oscillator needs to be cooled.
One method to cool the ring oscillator is to add a cooling fan to the clock generator. However, the addition of the cooling fan to the clock generator increases the size and manufacturing cost of the clock generator.
Another method to cool the ring oscillator is to temporary reduce the frequency of the clock signal supplied to the CPU. When the frequency of the clock signal is reduced, the CPU operates at a lower processing speed so that the heat produced by the CPU is reduced. Accordingly, the heat produced by the generated clock signal is also reduced. Thus, the ring oscillator can be cooled by temporary reducing the frequency of the clock signal supplied to the CPU.
It is preferable that a reduction in the processing speed of the CPU should be minimized. Therefore, it is required to efficiently reduce the frequency of the clock signal. The frequency of the clock signal may be efficiently reduced by using a temperature sensor for detecting the temperature of the ring oscillator. However, an addition of the temperature sensor to the clock generator increases the size and manufacturing cost of the clock generator.